Engine control system

ABSTRACT

A system and method for monitoring vehicle performance and updating engine control parameters, which provides a solution to the problem of tuning engine control parameters for a vehicle. The core components of the invention are an engine controller coupled to an interface device which communicates with a remote device. Generally speaking, the components are configured as follows: the engine controller receives signals from various sensors in a vehicle and the engine controller controls the engine based on engine control parameters and the signals from the sensors. The interface device monitors the engine control and sensor signals and transmits information to the remote device. The remote device receives the information and sends back updated engine control parameters. The interface device receives the updated engine control parameters and communicates with the engine controller to update the engine control parameters using the updated engine control parameters.

CROSS REFERENCE TO RELATED APPLICATIONS

This application claims priority to U.S. patent Ser. No. 17/560,473filed on Dec. 23, 2021 which claims priority to U.S. Provisional PatentNo. 63/152,413 filed on Feb. 23, 2021, which is incorporated in itsentirety.

BACKGROUND

Engine controllers (engine control units, engine control modules, andother vehicle control modules) are used in various types of vehicles tocontrol the operation of the engine. For example, engine timing, fuel toair ratio, and other parameters may be controlled using an enginecontroller.

Engine control parameters can be adjusted in a tuning process.Generally, tuning is accomplished by recording engine performance (e.g.,horsepower, oxygen compensation, fuel consumption, etc.) as the engineis operated, then examining the recorded data for suboptimalperformance, and modifying the engine control parameters to attempt toremedy the suboptimal performance. The new set of parameters are thentested.

For high performance vehicles, such as professional race cars, theforces on the vehicle can be extreme while in operation, which cansignificantly affect engine performance and can be difficult tosimulate. Accordingly, engine tuning is performed on many professionalrace cars based on operation on the vehicle race tracks. Normally thisis accomplished by having the vehicle run one or more laps and then comeback to the pits to have recorded engine performance data downloaded andanalyzed. Adjusted parameters are then uploaded to the engine controlleron the vehicle and these new parameters are tested. This process is verylaborious and can take several hours, including significant time whenthe Tuner (person performing the tuning) is waiting, and alsosignificant time when the Driver (operator of the vehicle) is waiting.Practice time on tracks is often very expensive, so this process canlead to significant costs as well.

Furthermore, generally an engine tune is not adjustable during thecourse of a race. Portions of a course may have tight turns or inclineswhere optimal lower end torque would lead to optimal performance. Otherportions of the course may have large straight sections where optimaltop speeds would lead to optimal performance. Some courses also havedifferent types of surfaces (e.g., paved section and dirt sections)where different engine control parameters would be optimal for eachdifferent type of surface. Generally, a single set of parameters will beused for the entire race which will be a compromise set of enginecontrol parameters. A single set of parameters may not be able tooptimize engine performance for all portions of a course.

SUMMARY

The disclosed device is unique when compared with other known devicesand solutions because it allows for real time adjustment of enginecontrol parameters and allows for engine control parameters to beadjusted during a race when communication with outside devices may beprohibited by race rules.

The disclosed device is unique in that it is structurally different fromother known devices or solutions. More specifically, the device isunique due to the presence of: (1) an interface device with a displaythat provides information to a driver and communicates with a remotedevice; and (2) the interface device which communicates with the enginecontroller to adjust engine control parameters during vehicle operation.

BRIEF DESCRIPTION OF DRAWINGS

FIG. 1 shows an example schematic view of a vehicle.

FIG. 2 shows an example schematic view of an interface device and remotedevice.

FIG. 3 shows an example flow diagram of operations performed by theinterface device.

FIG. 4 shows an example flow diagram of operations performed by theremote device.

FIG. 5 shows an example flow diagram of operations performed by theinterface device.

FIG. 6 shows an example display on the interface device.

FIG. 7 shows a first example display on the remote device.

FIG. 8 shows a second example display on the remote device.

DETAILED DESCRIPTION

In the Summary above, in this Detailed Description, the claims below,and in the accompanying drawings, reference is made to particularfeatures of the invention. It is to be understood that the disclosure ofthe invention in this specification includes all possible combinationsof such particular features. For example, where a particular feature isdisclosed in the context of a particular aspect or embodiment of theinvention, or a particular claim, that feature can also be used—to theextent possible—in combination with and/or in the context of otherparticular aspects and embodiments of the invention, and in theinvention generally.

The term “comprises” and grammatical equivalents thereof are used hereinto mean that other components, ingredients, steps, etc. are optionallypresent. For example, an article “comprising” (or “which comprises”)components A, B, and C can consist of (i.e., contain only) components A,B, and C, or can contain not only components A, B, and C but alsocontain one or more other components.

Where reference is made herein to a method comprising two or moredefined steps, the defined steps can be carried out in any order orsimultaneously (except where the context excludes that possibility), andthe method can include one or more other steps which are carried outbefore any of the defined steps, between two of the defined steps, orafter all the defined steps (except where the context excludes thatpossibility).

The term “at least” followed by a number is used herein to denote thestart of a range including that number (which may be a range having anupper limit or no upper limit, depending on the variable being defined).For example, “at least 1” means 1 or more than 1. The term “at most”followed by a number is used herein to denote the end of a range,including that number (which may be a range having 1 or 0 as its lowerlimit, or a range having no lower limit, depending upon the variablebeing defined). For example, “at most 4” means 4 or less than 4, and “atmost 40%” means 40% or less than 40%. When, in this specification, arange is given as “(a first number) to (a second number)” or “(a firstnumber)— (a second number),” this means a range whose limits includeboth numbers. For example, “25 to 100” means a range whose lower limitis 25 and upper limit is 100 and includes both 25 and 100.

FIG. 1 shows an example schematic view of a vehicle 100. Exteriorelements of the vehicle 100 are shown in dashed lines. The vehicle mayinclude an engine controller 110 with a communication bus 120, sensors130, and interface device 200. The engine controller 110 may be anengine control unit or engine control module configured to controlvarious functions of the engine (not shown) of the vehicle 100 and otherportions of the vehicle. The engine controller 110 may include an enginecontrol module, engine control unit, transmission control module, andother vehicle control modules. In a vehicle with an automatictransmission, the engine controller 110 may include a powertrain controlmodule that controls the vehicle's 100 engine and transmission. Asanother example, the engine controller 110 may have distinct modules orportions that may communicate via the communication bus 120. Examples offunctions of the engine that the engine controller may control are: fuelinjection timing and duration, exhaust valve timing and duration open,air intake valve timing and duration open, ignition timing, etc. Theengine controller may control the engine functions based on datareceived from the sensors 130 and engine control parameters programmedinto the engine controller.

The sensors 130 may sense a variety of engine and vehicle conditions.For example, the sensors 130 may include an oxygen sensor that sensesoxygen in the exhaust, a thermometer that measures temperature of enginecoolant, an accelerometer (“g sensor”) that senses vehicle acceleration,mass air flow (MAF) sensor that measures mass of air intake, manifoldabsolute pressure (MAP) sensor that measures air intake pressure,barometric sensor that measures outside air pressure, oil temperaturesensor, air fuel ratio sensor that measures air and fuel ratio atintake, oxygen sensor that measures oxygen in exhaust, wheel speedsensor, speedometer, crankshaft position sensor (used to determinerevolutions per minute (RPM) of engine), and a global positioning system(GPS) that determines a position of the vehicle (alternatively theinterface device 200 may include a GPS).

The sensors 130 may be connected to the engine controller 110 via thebus 120. The bus 120 may be a controller area network (CAN) bus. Theinterface device 200 may also be connected to the bus 120 and maycommunicate with the engine controller 110 via the bus 120 through adiagnostic port in the bus 120. The interface device 200 may alsoreceive information from the sensors 130 via the bus 120. Alternatively,the interface device 200 may receive sensor information from the sensorsvia the engine controller 110.

FIG. 2 shows an example schematic view of an interface device 200 andremote device 300. The interface device 200 may include at least onememory 240, at least one processor 250, communication hardware 260, anda display 270. The memory 240 may include volatile and non-volatilememory. The memory 240 may be configured to store information thereonincluding instructions to operate the interface device 200.

The processor 250 may include a central processing unit, or otherhardware capable of executing the instructions stored on the memory 240.The processor 250 may be configured to execute the instructions storedon the memory 240 to control the interface device 200.

The communication hardware 260 may include hardware (such as a port) forcommunicating with the engine controller 110 over a wired connection viathe bus 120. The communication hardware 260 may also include hardwarefor communicating with the remote device 300 wirelessly (e.g., WI-FI,4G, 4G LTE, 5G, Radio frequency).

The display 270 may display information to a driver of the vehicle 100(or other person in the vehicle 100). The display 270 may include atouch screen that accepts user input and is easy to operate whiledriving.

The remote device 300 may include at least one memory 340, at least oneprocessor 350, communication hardware 360, and a display 370. The memory340 may include volatile and non-volatile memory. The memory 340 may beconfigured to store information thereon including instructions tooperate the remote device 300.

The processor 350 may include a central processing unit or otherhardware capable of executing the instructions stored on the memory 340.The processor 350 may be configured to execute the instructions storedon the memory to control the remote device 300.

The communication hardware 360 may include hardware for communicatingwith the interface device 200 wirelessly (e.g., Wi-Fi, 4G, 4G LTE, 5G).

The display 370 may display information to a driver of the vehicle 100(or other person in the vehicle 100). The display 370 may include atouch screen that accepts user input and is easy to operate whiledriving.

FIG. 3 shows an example flow diagram of operations performed by theinterface device 200. At S310, the interface device 200 may obtainsensor data from the sensors 130, GPS data from the GPS, and enginecontrol information from the engine controller 110 in real time (e.g.,as it is generated or within about 3 seconds of generation). Restated,the interface device 200 may receive a constant stream of sensor data,GPS data, and engine control information while the vehicle is operating.The sensor data may include input from the sensors 130. For example,sensor data may include oxygen readings from the oxygen sensor, airintake readings from the MAF sensor, etc. The GPS data may include adetermined position of the vehicle in real time or satellite readingsthat may be used to determine the position of the vehicle in real time.The engine control information may include the implemented enginecontrol parameters and information that is derived from the sensor datasuch as revolutions per minute (RPM) derived from crankshaft positionsensor data, etc. The interface device 200 may also receive the currentengine control parameters from the engine controller 110. The enginecontrol parameters may include matrixes with control parameters orvalues for various engine control parameters. For example, the enginecontrol parameters may include a matrix of fuel injection time for arange of values of RPMs and MAP. The engine control parameter matricesmay have two or more dimensions.

At S320, the interface device 200 may send upload data based on thereceived sensor data, GPS data, and engine control information to theremote device 300 in real time (e.g., upon receiving the data or withinabout 3 seconds of receiving the data). Restated, the interface device200 may send a constant stream of upload data to the remote device 300while the vehicle is in operation. In some embodiments, some processingmay be done to the received sensor data, GPS data, and engine controlinformation before sending the upload information to the remote device300. For example, GPS data that includes satellite readings, may beconverted into GPS data that includes coordinates of the vehiclelocation. In some embodiments, the upload information may include thereceived sensor data, GPS data, and engine control information as wellas the information derived from the received sensor data, GPS data, andengine control information.

At S330, the interface device 200 may receive updated engine controlparameters from the remote device 300. The updated engine controlparameters may include individual parameters that should be updated oran entire replacement set of engine control parameters. At S340, theinterface device 200 may send the updated engine control parameters tothe engine controller 110 with instructions to implement the updatedengine control parameters.

Accordingly, the interface device 200 may function to facilitatecommunications between the engine controller 110, and the remote device300 to implement new engine control parameters in the engine controller110 while the vehicle is being operated by conveying informationpertaining to the operation of the vehicle (upload data based on sensordata, GPS data, and engine control information) to the remote device 300and convey updated engine control parameters to the engine controller110.

FIG. 4 shows an example flow diagram of operations performed by theremote device 300. At S410, the remote device 300 may obtain the currentengine control parameters and receive upload data based on the sensordata, the GPS data, and the engine control information in real time. Thecurrent engine control parameters may be obtained in various ways,including through wireless communication with the interface device 200,from a file upload independent of the wireless communication with theinterface device, and generation of the current engine controlparameters on the remote device 300. The upload data may be receivedfrom the interface device 200 via wireless communication.

At S420, the remote device 300 may display upload data on the display370. The upload data may be displayed as graphs, matrixes, maps, etc.The upload data may be displayed in real time. Displaying informationbased on the upload data may also be considered displaying the uploaddata. For example, the GPS data of the vehicle 100 may be used todisplay a location of the vehicle on a generated map or course map. TheRPM in combination with GPS data, acceleration data, and topographicinformation of the map may be used to display estimated horsepoweroutput of the vehicle's 100 engine.

At S430, the remote device 300 may display alerts based on the uploaddata and alert settings. For example, the alert settings may be set suchthat any time oxygen levels in the exhaust are outside of a certainrange an alert will be sent, with the location of the vehicle at thetime of the oxygen levels being sensed as being outside of the rangebeing indicated. Accordingly, pertinent information may be displayed toa Tuner (a user of the remote device 300), who may then adjust enginecontrol parameters based on the alert. Other information related to thealert may also be displayed with the alert, such as vehicle position(including elevation and topography (e.g., incline, decline, turnradius, etc.)), acceleration, speed, RPM, MAF or MAP, etc.

At S440, the remote device 300 may obtain updated engine controlparameters. The updated engine control parameters may be obtained by auser entering the updated engine control parameters to the remote device300. The Tuner may use the displayed uploaded data and alerts todetermine which engine control parameters need to be changed and by howmuch.

The updated engine control parameters may also be uploaded from anotherdevice or generated based on the uploaded data using a program on theremote device 300. At S450, the remote device 300 may send the updatedengine control parameters to the interface device 200 via wirelesscommunication. Accordingly, the remote device 300 may be configured tofacilitate the tuning of the engine control parameters of the vehicle's100 engine controller 110 while the vehicle is being operated.

FIG. 5 shows an example flow diagram of operations performed by theinterface device 200. At S510, the interface device 200 may obtain setsof engine control parameters. The interface device 200 may obtain thesets of engine control parameters from the remote device 300, the enginecontroller 110, and/or the sets of control parameters may be uploaded tothe device from another source. Engine control parameters may beoptimized for different circumstances. Engine control parameters may beoptimized for dirt roads vs paved roads, straight aways vs curved orhilly roads, or wet pavement vs dry pavement. Roads and racing coursesoften have different characteristics at different points in the course(straight aways vs curved or hilly portions) or at different times (whenit is raining and the roads are wet vs when the roads are dry).Accordingly, it may be advantageous for the interface device 200 to havestored on the memory 240 several sets of engine control parameters,which each may be preferred for a different course condition. Eachengine control parameter set included in the sets of engine controlparameters may be a full or partial set of engine control parametersused by the engine controller 110.

At S520, the interface device 200 may send instructions to the enginecontroller 110 to implement a first engine control parameter set.Alternatively, the engine controller 110 may be allowed to operate withthe first engine control parameters set which is already beingimplemented by the engine controller 110.

At S530, the interface device 200 may obtain a selection of a secondengine control parameter set, which is at least partially different fromthe first parameter set. The selection of the second parameter set maybe obtained by the Driver inputting (touching) into the display 270 (ifthe display has a touch screen) the selection. For example, the display270 may display options for engine control parameter sets. The Drivermay select the second parameter set by touching the display of the nameof the second parameter set on the screen.

Alternatively, a course map may be stored in the memory 240 and a set ofcoordinates may be programmed into the interface device 200 such thatwhen the vehicle reaches a certain location (determined using GPS data),the processor will select the second engine control parameter set. Forexample, if a course changes from paved to dirt at a first location. Theinterface device 200 may be programmed to select the second enginecontrol parameter set (i.e., obtain the selection of the secondparameter set) when the GPS data indicates the vehicle 100 is at thefirst location or has passed the first location. Then, when the vehicle100 arrives at the first location, the interface device 200 may obtainthe selection of the second engine control parameter set. As anotheralternative, the selection of the second engine control parameter setmay be obtained from the remote device 300.

At S540, the interface device 200 may send instructions to the enginecontroller 110 to implement the second parameter set. The enginecontroller 110 may then update the engine control parameters based onthe second parameter set.

FIG. 6 shows an example display on the interface device 200. The display270 of the interface device 200 may display a map 274 where a course mapor other form of map is displayed with the location of the vehicle 100indicated. The display 270 may also display options for sets of enginecontrol parameters 272. For example, the options for sets of enginecontrol parameters 272 may include “hills,” “straight,” “dirt,” “paved,”and “rain.” The options may be selected through a touch over the displayof the option. The display 270 may also include vehicle information 276such as speed, RPM, engine temperature, alerts, etc.

FIG. 7 shows a first example display on the remote device 300. Thedisplay 370 of the remote device 300 may display a portion of the enginecontrol parameters 372. A Tuner may adjust the engine control parametersbased on the upload data by selecting a cell in the portion of theengine control parameters 372 and entering a new value into the cell.The shown portion of the engine control parameters 372 is an example ofa three-dimensional matrix for fuel injection time based on RPMs andMAP. A Menu or other form of navigational tool may be used to changewhich portion of the engine control parameters 372 is displayed or whatupload data is displayed.

FIG. 8 shows a second example display on the remote device 300. Thedisplay 370 of the remote device 300 may display a map 374 of the courseor other map with indications of locations 375 where alerts 376 weretriggered and what type of alert 376 was triggered. For example, analert 376 for the oxygen sensor is displayed with a triangle on the map374 to indicate the location of the alert. When an alert is selected,the remote device 300 may display the various conditions when the alerthappened (such as RPM, MAP, elevation, topography data, etc.) to assistthe tuner to know how to correct the situation that caused the alert376. The parameters for alerts may be pre-programmed, set by the Tuner,or received from the interface device 200. For example, an alert 376 maybe triggered if the oxygen level in the exhaust is sensed outside of acertain range.

Advantageously, a vehicle 100 that includes an interface device 200which communicates with a remote device 300 may make adjustments to thetune (i.e., adjusting engine control parameters) of the enginecontroller 110 using the interface device 200 while the vehicle isoperated. Accordingly, much of the time that is currently wasted whileeither the Driver is waiting for the Tuner to upload data from theengine controller, find problems in the data, and adjust the enginecontrol parameters or the Tuner is waiting for the driver to complete alap to see if the new engine control parameters have solved or mitigatedthe problem can be greatly reduced.

Also advantageous, the upload of GPS data to the remote device 300allows the Tuner to know what road conditions (curves, hills, etc.) thedriver the vehicle 100 was facing when the problem that caused the alert376 to occur. Thus, it is far easier for the Tuner to recognize wherecourse related problems are coming from.

A further advantage of the interface device 200 is that the interfacedevice can store and cause to be implemented multiple engine controlparameter sets based on driver input or pre-programming. Thus, even in arace where external communication is not allowed, the Driver can adjustthe tune (by implementing a different set of engine control parameters)of the engine controller 110.

Accordingly, the present description provides for various embodimentsfor an engine control system. Many uses and advantages are offered bythe engine control system as described above in one or more non-limitingembodiments in the present description.

The corresponding structures, materials, acts, and equivalents of anymeans or step plus function elements in the claims below are intended toinclude any structure, material, or act for performing the function incombination with other claimed elements as specifically claimed. Thedescription of the present invention has been presented for purposes ofillustration and description but is not intended to be exhaustive orlimited to the invention in the form disclosed. Many modifications andvariations will be apparent to those of ordinary skill in the artwithout departing from the scope and spirit of the invention.

The embodiments were chosen and described in order to best explain theprinciples of the invention and the practical application, and to enableothers of ordinary skill in the art to understand the invention forvarious embodiments with various modifications as are suited to theparticular use contemplated. The present invention, according to one ormore embodiments described in the present description, may be practicedwith modification and alteration within the spirit and scope of theappended claims. Thus, the description is to be regarded as illustrativeinstead of restrictive of the present invention.

What is claimed is:
 1. An engine control system comprising: a controlmodule that controls an engine and transmission of a vehicle; and one ormore processors; one or more memory devices coupled to the one or moreprocessors; and one or more computerized programs, wherein the one ormore computerized programs are stored in the one or more memory devicesand configured to be executed by the one or more processors, the one ormore computerized programs including instructions for: automaticallysending directives to implement a first controller parameter set withfirst tunings for fuel injection timing, exhaust valve timing, airintake valve timing, or ignition timing to the engine when the vehiclehas reached a location; and automatically sending second directives toimplement a second controller parameter set to the engine with secondtunings for the fuel injection timing, the exhaust valve timing, the airintake valve timing, or the ignition timing to the engine when thevehicle has reached the location.
 2. The engine control system of claim1, wherein the instructions further include: sending one or more alertsthat indicate parameters outside of a predefined range.
 3. The enginecontrol system of claim 1, wherein the instructions further include:sending one or more alerts when the location of the vehicle was at thelocation as well as RPM, MAP, elevation, or topography data.
 4. Theengine control system of claim 1, wherein one or more sensors thattransmit data to the engine control system include one or more wheelsfor determining speed and for determining oil temperature.
 5. The enginecontrol system of claim 4, wherein the one or more sensors include anaccelerometer and a speedometer.
 6. The engine control system of claim5, wherein the one or more sensors include a mass air flow sensor thatmeasures mass of air intake and a manifold absolute pressure sensor thatmeasures air intake pressure.
 7. An engine control system comprising: acontrol module that controls an engine and a transmission of a vehicle;and one or more processors; one or more memory devices coupled to theone or more processors; and one or more computerized programs, whereinthe one or more computerized programs are stored in the one or morememory devices and configured to be executed by the one or moreprocessors, the one or more computerized programs including instructionsfor: receiving upload data comprising sensor data and engine controlinformation in real time during a race; displaying the upload data;displaying alerts based on the upload data in real time during the race;obtaining updated engine control parameters including tunings for fuelinjection timing, exhaust valve timing, air intake valve timing, orignition timing to the engine; and implementing the updated enginecontrol parameters.
 8. The engine control system of claim 7, wherein theupload data is displayed along with a three-dimensional matrix for fuelinjection time based on RPMs and MAP.
 9. The engine control system ofclaim 8, wherein the instructions further include: displaying the alertswhen the updated engine control parameters are outside a predeterminedrange.
 10. The engine control system of claim 9, wherein theinstructions further include a first course map for the race from one ormore maps stored in one or more databases with indications of locationswhere the alerts were triggered and what type of alert was triggered.11. The engine control system of claim 10, wherein the instructionsfurther include analyzing the sensor data; and displaying estimatedhorsepower output of the engine of the vehicle.
 12. The engine controlsystem of claim 11, wherein the predetermined range is preprogrammed.13. The engine control system of claim 12, wherein the predeterminedrange is inputted from a remote device.
 14. An engine control systemcomprising: a control module that controls an engine and a transmissionof a vehicle; an interface device in the vehicle; and one or moreprocessors; one or more memory devices coupled to the one or moreprocessors; and one or more computerized programs, wherein the one ormore computerized programs are stored in the one or more memory devicesand configured to be executed by the one or more processors, the one ormore computerized programs including instructions for: sendingdirectives to implement a first engine control parameter set with firsttunings for fuel injection timing, exhaust valve timing, air intakevalve timing, or ignition timing to the engine by a first selection;obtaining a second selection of a second engine control parameter setwith second tunings for the fuel injection timing, or the exhaust valvetiming, or the air intake valve timing, or the ignition timing to theengine; and sending second directives to implement the second enginecontrol parameter set to the engine.
 15. The engine control system ofclaim 14, wherein the instructions further include: generating a firstmap on the interface device from one or maps stored in one or moredatabases with one or more coordinates.
 16. The engine control system ofclaim 15, wherein the instructions further include: sending one or morealerts that indicate parameters outside of predefine range.
 17. Theengine control system of claim 16, wherein the instructions furtherinclude: sending one or more alerts of RPM, MAP, elevation, andtopography data.
 18. The engine control system of claim 17, wherein oneor more sensors connected to the engine control system include one ormore on one or more wheels for determining speed and for determining oiltemperature.
 19. The engine control system of claim 18, wherein the oneor more sensors include an accelerometer and speedometer.
 20. The enginecontrol system of claim 19, wherein the one or more sensors include amass air flow sensor that measures mass of air intake and a manifoldabsolute pressure sensor that measures air intake pressure.